package com.english.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDate;
import java.time.LocalTime;
import java.util.Date;

/**
 * 免费小课时间段实体类
 * 存储免费小课的时间段信息
 * 
 * @author system
 * @since 2025-01-27
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName("free_lesson_time_slot")
public class FreeLessonTimeSlot {
    /**
     * 时间段ID
     */
    @TableId("id")
    private Long id;
    
    /**
     * 日期
     */
    @TableField("date")
    private LocalDate date;
    
    /**
     * 开始时间
     */
    @TableField("start_time")
    private LocalTime startTime;
    
    /**
     * 结束时间
     */
    @TableField("end_time")
    private LocalTime endTime;
    
    /**
     * 星期几：1=周一，7=周日
     */
    @TableField("week_day")
    private Integer weekDay;
    
    /**
     * 状态：1=可预约，0=不可预约
     */
    @TableField("status")
    private Integer status;
    
    /**
     * 是否被占用：0=空闲，1=已占用
     */
    @TableField("is_occupied")
    private Integer isOccupied;
    
    /**
     * 班级类型
     */
    @TableField("class_id")
    private String classId;
    
    /**
     * 最大学生数（一对一=1）
     */
    @TableField("max_students")
    private Integer maxStudents;
    
    /**
     * 当前预约学生数
     */
    @TableField("current_students")
    private Integer currentStudents;
    
    /**
     * 创建时间
     */
    @TableField("create_time")
    private Date createTime;
    
    /**
     * 更新时间
     */
    @TableField("update_time")
    private Date updateTime;
} 